GGGGLLLL____CCCCOOOONNNNSSSSTTTTAAAANNNNTTTT____AAAATTTTTTTTEEEENNNNUUUUAAAATTTTIIIIOOOONNNN, GGGGLLLL____LLLLIIIINNNNEEEEAAAARRRR____AAAATTTTTTTTEEEENNNNUUUUAAAATTTTIIIIOOOONNNN, and
ggggllllGGGGeeeettttLLLLiiiigggghhhhtttt returns in _p_a_r_a_m_s the value or values of a light source
parameter. _l_i_g_h_t names the light and is a symbolic name of the form
GGGGLLLL____LLLLIIIIGGGGHHHHTTTTi for 0 _< i < GGGGLLLL____MMMMAAAAXXXX____LLLLIIIIGGGGHHHHTTTTSSSS, where GGGGLLLL____MMMMAAAAXXXX____LLLLIIIIGGGGHHHHTTTTSSSS is an
implementation dependent constant that is greater than or equal to eight.
_p_n_a_m_e specifies one of ten light source parameters, again by symbolic
name.
The following parameters are defined:
GGGGLLLL____AAAAMMMMBBBBIIIIEEEENNNNTTTT _p_a_r_a_m_s returns four integer or floating-point values
representing the ambient intensity of the light
source. Integer values, when requested, are linearly
mapped from the internal floating-point
representation such that 1.0 maps to the most
positive representable integer value, and -1.0 maps
to the most negative representable integer value. If
the internal value is outside the range [-1, 1], the
corresponding integer return value is undefined. The
initial value is (0, 0, 0, 1).
GGGGLLLL____DDDDIIIIFFFFFFFFUUUUSSSSEEEE _p_a_r_a_m_s returns four integer or floating-point values
representing the diffuse intensity of the light
source. Integer values, when requested, are linearly
_p_a_r_a_m_s returns a single integer or floating-point
value representing the quadratic attenuation of the
light. An integer value, when requested, is computed
by rounding the internal floating-point
representation to the nearest integer. The initial
value is 0.
NNNNOOOOTTTTEEEESSSS
It is always the case that GGGGLLLL____LLLLIIIIGGGGHHHHTTTTi = GGGGLLLL____LLLLIIIIGGGGHHHHTTTT0000 + i.
If an error is generated, no change is made to the contents of _p_a_r_a_m_s.
EEEERRRRRRRROOOORRRRSSSS
GGGGLLLL____IIIINNNNVVVVAAAALLLLIIIIDDDD____EEEENNNNUUUUMMMM is generated if _l_i_g_h_t or _p_n_a_m_e is not an accepted value.
GGGGLLLL____IIIINNNNVVVVAAAALLLLIIIIDDDD____OOOOPPPPEEEERRRRAAAATTTTIIIIOOOONNNN is generated if ggggllllGGGGeeeettttLLLLiiiigggghhhhtttt is executed between the
execution of ggggllllBBBBeeeeggggiiiinnnn and the corresponding execution of ggggllllEEEEnnnndddd.